<?xml version="1.0" encoding="ISO-8859-15"?>
<!-- edited with XMLSpy v2007 (http://www.altova.com) by Dakosy AG (Dakosy AG) -->
<!-- Copyright (c) 2007 HPA (http://www.hafen-hamburg.de) -->
<!-- XSD-Version 2.3 / 21-Jan-2008 -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
	<xsd:include schemaLocation="MessageEnvelope.xsd"/>
	<xsd:include schemaLocation="TD04_core_Subj.xsd"/>
	<xsd:element name="Document">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="Metainfo" type="MetaInfoDef">
					<xsd:annotation>
						<xsd:documentation>In the TD04 interface only one recipient is used, i.e. only 2 or 3 participants can be specified for a transmission.</xsd:documentation>
						<xsd:documentation>The attribute Alias="DAK" is mandatory.</xsd:documentation>
						<xsd:documentation xml:lang="DE">In TD04 wird nur 1 Empfänger benutzt,d.h. es sind immer 2 oder 3 Beteiligte (participants) angegeben für eine Übertragung.</xsd:documentation>
						<xsd:documentation xml:lang="DE">In TD04 ist das Attribut Alias="DAK" Pflicht.</xsd:documentation>
					</xsd:annotation>
				</xsd:element>
				<xsd:element name="Messages">
					<xsd:complexType>
						<xsd:sequence>
							<xsd:element name="Message" type="MessageDef" maxOccurs="unbounded"/>
						</xsd:sequence>
					</xsd:complexType>
				</xsd:element>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="MessageDef">
		<xsd:annotation>
			<xsd:documentation>General Message definition</xsd:documentation>
			<xsd:documentation>Describes the contents of a message (metainfo and data)</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="MessageMetaInfo" type="MessageMetaInfoDef" minOccurs="0"/>
			<xsd:element name="TransportOrder" type="TransportOrderDef"/>
		</xsd:sequence>
		<xsd:attribute name="ReferenceNumber" use="required">
			<xsd:annotation>
				<xsd:documentation xml:lang="EN">uniqe reference number identifying a single message</xsd:documentation>
				<xsd:documentation xml:lang="DE">Nachrichten-Referenz</xsd:documentation>
			</xsd:annotation>
			<xsd:simpleType>
				<xsd:restriction base="xsd:string">
					<xsd:minLength value="1"/>
					<xsd:maxLength value="35"/>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
		<xsd:attribute name="Status" type="xsd:string" use="optional">
			<xsd:annotation>
				<xsd:documentation xml:lang="EN">not used for TD04</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:complexType>
	<xsd:complexType name="TransportOrderDef">
		<xsd:sequence>
			<xsd:element name="BusinessDocumentDetail" type="BusinessDocumentDef">
				<xsd:annotation>
					<xsd:documentation>in the MessageSignificance tag use PR for Prenotification, DP for Departure or AV for Arrival in the inbound traffic</xsd:documentation>
					<xsd:documentation xml:lang="DE">MessageSignificance im Bahnempfang: PR für Vorbenachrichtigung, DP für Abfahrt, AV für Ankunft</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="TypeOfTransport">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>K for Wagon Load and C for Container Load </xsd:documentation>
						<xsd:documentation xml:lang="DE">K für Wagenladungsverkehr (konventioneller Verkehr) und C für Kombinierten Verkehr (Container)</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="C"/>
						<xsd:enumeration value="K"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Direction">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>Direction of the transport: I for Inbound (Incoming Train) and O for Outbound (outgoing train)</xsd:documentation>
						<xsd:documentation xml:lang="DE">Transportrichtung: I für Bahnempfang und O für Bahnversand</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="I"/>
						<xsd:enumeration value="O"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="HandlingIndicator" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>indication how to handle the order in case the data does not meet all requirements of the pre-check</xsd:documentation>
					<xsd:documentation>"M": manual handling, "W": wait for modification message</xsd:documentation>
					<xsd:documentation xml:lang="DE">Anzeige, wie mit Aufträgen verfahren werden soll, die keine Vorprüf-Qualität haben</xsd:documentation>
					<xsd:documentation xml:lang="DE">"M": manuelle Bearbeitung, "W": warten auf Änderungsnachricht</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="M"/>
						<xsd:enumeration value="W"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="DispatchDetail">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Condition" minOccurs="0">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>according to HABIS code list D06</xsd:documentation>
									<xsd:documentation xml:lang="DE">lt. HABIS Schlüsselverzeichnis D06</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:pattern value="[1-4]"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="Date" type="xsd:date" minOccurs="0">
							<xsd:annotation>
								<xsd:documentation>shipping date</xsd:documentation>
								<xsd:documentation xml:lang="DE">Versanddatum</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element name="RailStation" type="RailStationDef"/>
						<xsd:element name="Location" type="LocationDef" minOccurs="0"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="DischargeDetail">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Condition" minOccurs="0">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>according to HABIS code list D07</xsd:documentation>
									<xsd:documentation xml:lang="DE">lt. HABIS Schlüsselverzeichnis D07</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:pattern value="[1-4]"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="Date" type="xsd:date" minOccurs="0">
							<xsd:annotation>
								<xsd:documentation>arrival date</xsd:documentation>
								<xsd:documentation xml:lang="DE">Ankunftsdatum</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element name="Hour" minOccurs="0">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>arrival hour</xsd:documentation>
									<xsd:documentation xml:lang="DE">Ankunftsstunde</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:pattern value="[0-2][0-9]"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="RailStation" type="RailStationDef"/>
						<xsd:element name="Location" type="LocationDef" minOccurs="0"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Destination" type="RailStationDef" minOccurs="0"/>
			<xsd:element name="ClearanceStation" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>name of the train station where customs clearance shall take place</xsd:documentation>
						<xsd:documentation xml:lang="DE">Bahnhof an dem die Verzollung vorgenommen werden soll</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="32"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="CustomsProcedure" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>not used for inbound traffic and when customs handling is via HZO</xsd:documentation>
						<xsd:documentation>for container load traffic according to HABIS code list A09</xsd:documentation>
						<xsd:documentation>for wagon load traffic according to HABIS code list A10</xsd:documentation>
						<xsd:documentation xml:lang="DE">nicht für Bahnempfang und nicht bei Zollabfertigung über HZO</xsd:documentation>
						<xsd:documentation xml:lang="DE">für KV lt. SVZ A09, für WLV lt. SVZ A10</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="2"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="PreviousRegistrationNumberType" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>type of previous paper, mandatory for the automatic Atlas registration by HABIS Classic</xsd:documentation>
					<xsd:documentation>code list ZOLSVPU2 of HABIS for values VORPAPART</xsd:documentation>
					<xsd:documentation xml:lang="DE">Vorpapierart, Pflicht für automatische Atlas-Anmeldung durch HABIS Classic</xsd:documentation>
					<xsd:documentation xml:lang="DE">lt. HABIS-Stammdatei ZOLSVPU2 für VORPAPART</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="5"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="PreviousRegistrationNumber" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>mandatory for the automatic Atlas registration by HABIS Classic</xsd:documentation>
					<xsd:documentation xml:lang="DE">Übergabeschein-Nr, Pflicht für automatische Atlas-Anmeldung durch HABIS Classic</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1"/>
						<xsd:maxLength value="11"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="RailwayBillType" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>type of railway bill according to code list BANSFPP0 of HABIS</xsd:documentation>
						<xsd:documentation xml:lang="DE">Frachtbrief-Art lt. HABIS-Stammdatei BANSFPP0</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="4"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="RailwayBillText" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>declarations to be printed in the railway bill</xsd:documentation>
						<xsd:documentation xml:lang="DE">Frachtbrieferklärung</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="120"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="TransportPaper" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>supplemetary enclosures to the transport paper (e.g. veterinary certificates, etc.)</xsd:documentation>
						<xsd:documentation xml:lang="DE">zusätzliche Beilagen zum Frachtbrief (z.B. Veterinärzeugnis)</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="140"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="TransitDetail" minOccurs="0">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="RouteCode" minOccurs="0" maxOccurs="5">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>mandatory for outbound traffic crossing a national border</xsd:documentation>
									<xsd:documentation xml:lang="DE">Leitungsweg-Code, Pflicht im Bahnversand bei grenzüberschreitendem Verkehr</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:length value="4"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="RouteText" minOccurs="0">
							<xsd:simpleType>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="70"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="RoutingPlanNumber" minOccurs="0">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation xml:lang="DE">Beförderungsplan-Nummer</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="6"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="RailwayClass">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>maximum loading class for the railtrack according to HABIS code list A25</xsd:documentation>
									<xsd:documentation xml:lang="DE">Streckenklasse lt. HABIS-Schlüsselverzeichnis A25</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:length value="2"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="GuidingValue">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>value to determine the destination for the transport</xsd:documentation>
									<xsd:documentation xml:lang="DE">Richtzahl des Bestimmungsbahnhofs  im nationalen Verkehr, Richtpunktcode für Bestimmungsladestelle im internationalen Verkehr</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="7"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ModeOfTransport" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>according to HABIS code list A20</xsd:documentation>
						<xsd:documentation xml:lang="DE">Beförderungsart lt. HABIS-Schlüsselverzeichnis A20</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:length value="1"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="KLVIndicator" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>to be specified in case of bimodal traffic, according to HABIS code list A64</xsd:documentation>
						<xsd:documentation xml:lang="DE">Kennzeichen für KLV-Verkehr lt. HABIS-Schlüsselverzeichnis A64</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:length value="1"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ScheduledTrain" type="TrainDef" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>only mandatory for outbound traffic, when the TrainDetail in the LoadingUnit is not specified</xsd:documentation>
					<xsd:documentation xml:lang="DE">Pflicht im Bahnversand wenn keine TrainDetail für die Ladeeinheiten angegeben sind</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="OverloadLicenceNumber" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>licence number for the transport of heavy-weight load or goods exceeding the loading gauge</xsd:documentation>
						<xsd:documentation xml:lang="DE">Genehmigungsnummer für Schwerwagen bzw. Lademaß-Überschreitung</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="6"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="OverloadLicenceYear" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>year of the overload licence</xsd:documentation>
						<xsd:documentation xml:lang="DE">Jahr der Genehmigung für Schwerwagen / Lademaß-Überschreitung</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:pattern value="[0-9][0-9]"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="WagonLoadData" type="FurtherTransportRelatedDataDef" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>only used with TypeOfTransport = K</xsd:documentation>
					<xsd:documentation xml:lang="DE">an dieser Stelle nur für TypeOfTransport = K angeben</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Consignor" type="PartyDataDef">
				<xsd:annotation>
					<xsd:documentation>the address is mandatory</xsd:documentation>
					<xsd:documentation xml:lang="DE">Versender, Pflichtangabe</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Consignee" type="PartyDataDef">
				<xsd:annotation>
					<xsd:documentation>the address is mandatory</xsd:documentation>
					<xsd:documentation xml:lang="DE">Empfänger, Pflichtangabe</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ShippingDirector" type="PartyDataDef" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation xml:lang="DE">Verkehrsführer</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Customer" type="PartyDataDef" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>customer of the RTC</xsd:documentation>
					<xsd:documentation xml:lang="DE">Kunde des EVU</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ShippingUnit" maxOccurs="999">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Position">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>Position of the container as transmitted by the customer in the transport order container segment. Unique number within the transport order.</xsd:documentation>
									<xsd:documentation>The position is used to unambigously identify the container in the communication.</xsd:documentation>
									<xsd:documentation xml:lang="DE">Position der Ladeeinheit im Transportauftrag. Eindeutige Nummer innerhalb des Transportauftrags.</xsd:documentation>
									<xsd:documentation>Die Positionsnummer wird in der Kommunikation benutzt zur eindeutigen Identifizierung der Ladeeinheit.</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:positiveInteger">
									<xsd:maxInclusive value="999"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="EmptyFull" type="EmptyFullDef"/>
						<xsd:element name="PackageCode" minOccurs="0">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>according to HABIS code list A06</xsd:documentation>
									<xsd:documentation xml:lang="DE">Verpackungscode lt. HABIS-Schlüsselverzeichnis A06</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:length value="2"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="NumberOfPackages" minOccurs="0">
							<xsd:simpleType>
								<xsd:restriction base="xsd:positiveInteger">
									<xsd:maxInclusive value="99999"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="Weight" type="WeightDef" minOccurs="0">
							<xsd:annotation>
								<xsd:documentation>mandatory when loading unit is full</xsd:documentation>
								<xsd:documentation>for container it is the net weight without the weight for equipment</xsd:documentation>
								<xsd:documentation>for wagon it is the loading weight</xsd:documentation>
								<xsd:documentation xml:lang="DE">Pflicht bei EmptyFull="F"</xsd:documentation>
								<xsd:documentation xml:lang="DE">für Container ist das Nettogewicht ohne Gewicht der Lademittel anzugeben</xsd:documentation>
								<xsd:documentation xml:lang="DE">für Waggons ist das Ladungsgewicht anzugeben</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element name="CustomsProcedure" minOccurs="0">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>for HABIS Zoll (HZO) according to HABIS code list A65</xsd:documentation>
									<xsd:documentation>when not using HZO (inbound traffic only): according to HABIS code list A44</xsd:documentation>
									<xsd:documentation xml:lang="DE">Zollverfahren, bei Benutzung von HABIS Zoll (HZO) lt. HABIS-Schlüsselverzeichnis A65</xsd:documentation>
									<xsd:documentation xml:lang="DE">wenn HABIS Zoll nicht benutzt wird (nur Bahnempfang): lt. HABIS-Schlüsselverzeichnis A44</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="2"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:choice minOccurs="0">
							<xsd:element name="CustomsUnitDetail" type="CustomsNotHZODef" minOccurs="0"/>
							<xsd:element name="CustomsUnitHZODetail" type="CustomsHZODef" minOccurs="0"/>
						</xsd:choice>
						<xsd:element name="GeneralCustomsData" type="GeneralCustomsDataDef" minOccurs="0"/>
						<xsd:element name="OriginCountryCode" type="CountryCodeDef" minOccurs="0"/>
						<xsd:element name="DestinationCountryCode" type="CountryCodeDef" minOccurs="0"/>
						<xsd:element name="TrainDetail" type="TrainDef" minOccurs="0"/>
						<xsd:element name="ArrivalDate" type="xsd:date" minOccurs="0">
							<xsd:annotation>
								<xsd:documentation>mandatory in the inbound traffic when MessageSignificance is AV (arrival)</xsd:documentation>
								<xsd:documentation xml:lang="DE">Pflicht im Bahnempfang bei MessageSignificance="AV" (Ankunft)</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element name="CustomerInstructionForStation" minOccurs="0">
							<xsd:annotation>
								<xsd:documentation>customer instructions for the rail station</xsd:documentation>
								<xsd:documentation>used only for outbound traffic: instruction for the dispatch station</xsd:documentation>
								<xsd:documentation xml:lang="DE">Kunden-Anweisungen für den Bahnhof</xsd:documentation>
								<xsd:documentation xml:lang="DE">nur im Bahnversand benutzt: Anweisung für den Abgangsbahnhof</xsd:documentation>
							</xsd:annotation>
							<xsd:simpleType>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="70"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="CustomerInstructionDestination" minOccurs="0">
							<xsd:annotation>
								<xsd:documentation>customer instructions for the destination station, for trains going between two harbour stations</xsd:documentation>
								<xsd:documentation>only used with outbound traffic</xsd:documentation>
								<xsd:documentation xml:lang="DE">Kunden-Anweisungen für den Zielbahnhof bei Umfuhren zwischen Hafenbahnhöfen</xsd:documentation>
								<xsd:documentation xml:lang="DE">nur beim Bahnversand benutzt</xsd:documentation>
							</xsd:annotation>
							<xsd:simpleType>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="70"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="LoadingRemark" minOccurs="0">
							<xsd:annotation>
								<xsd:documentation>remarks from quay operator after loading of the unit</xsd:documentation>
								<xsd:documentation xml:lang="DE">Bemerkung des Kaibetriebs nach Verladung</xsd:documentation>
							</xsd:annotation>
							<xsd:simpleType>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="40"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="SecondaryPlacard" minOccurs="0" maxOccurs="2">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>according to HABIS code list A03</xsd:documentation>
									<xsd:documentation xml:lang="DE">Nebenzettel lt. HABIS-Schlüsselverzeichnis A03</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:length value="2"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="SealData" type="SealDetailsDef" minOccurs="0" maxOccurs="99"/>
						<xsd:element name="SheetLine" minOccurs="0" maxOccurs="576">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>supplementary sheet line</xsd:documentation>
									<xsd:documentation>The supplementary sheet can consist of 9 pages of 64 lines each (the page is obtained by dividing the communicated line number by 64).</xsd:documentation>
									<xsd:documentation>HABIS uses only 1 page of 64 lines.</xsd:documentation>
									<xsd:documentation xml:lang="DE">Beiblatt-Zeile</xsd:documentation>
									<xsd:documentation xml:lang="DE">Das Beiblatt kann max. 9 Seiten zu 64 Zeilen umfassen (die Seitennummer kann per Division der Wiederholungsnummer durch 64 erhalten werden).</xsd:documentation>
									<xsd:documentation xml:lang="DE">HABIS benutzt nur 1 Seite zu 64 Zeilen.</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:minLength value="0"/>
									<xsd:maxLength value="72"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="DangerousGoods" type="DangerousGoodsDef" minOccurs="0" maxOccurs="999"/>
						<xsd:choice>
							<xsd:element name="TransportContainer" type="TransportContainerDef" minOccurs="0"/>
							<xsd:element name="TransportWagon" type="TransportWagonDef" minOccurs="0"/>
						</xsd:choice>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ContainerDef">
		<xsd:sequence>
			<xsd:element name="Length">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>container length</xsd:documentation>
						<xsd:documentation>according to HABIS code list A18</xsd:documentation>
						<xsd:documentation xml:lang="DE">Container-Länge lt. HABIS-Schlüsselverzeichnis A18</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:pattern value="\d{2}"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Height" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>container height</xsd:documentation>
						<xsd:documentation>according to HABIS code list A19</xsd:documentation>
						<xsd:documentation xml:lang="DE">Container-Höhe lt. HABIS-Schlüsselverzeichnis A19</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:pattern value="\d{2}"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Type" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>container type</xsd:documentation>
						<xsd:documentation>according to HABIS code list A05</xsd:documentation>
						<xsd:documentation xml:lang="DE">Container-Typ lt. HABIS-Schlüsselverzeichnis A05</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:length value="2"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="OversizedIndicator" type="ChoiceDef" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>indicator oversized container, default is 'No'</xsd:documentation>
					<xsd:documentation xml:lang="DE">Kennzeichen für Container-Übergröße, Default ist "N"</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="TareWeight" type="WeightDef" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>tare of container</xsd:documentation>
					<xsd:documentation xml:lang="DE">Tara des Containers</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="CustomsHZODef">
		<xsd:sequence>
			<xsd:element name="HANumber" type="HABISNumberDef" minOccurs="0"/>
			<xsd:element name="VubIndicator" type="ChoiceDef" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>to indicate if the goods are under embargo or other restrictions (can be necessary for inbound traffic)</xsd:documentation>
					<xsd:documentation>vub is the abbreviation for 'Verbote und Beschränkungen'</xsd:documentation>
					<xsd:documentation xml:lang="DE">Kennzeichen, dass die Ware unter Embargo-Regeln oder andere Beschränkungen fällt (evtl. nötig im Bahnempfang)</xsd:documentation>
					<xsd:documentation xml:lang="DE">VuB ist die Abkürzung für 'Verbote und Beschränkungen'</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="CustomsNotHZODef">
		<xsd:sequence>
			<xsd:element name="Indicator" type="ChoiceDef">
				<xsd:annotation>
					<xsd:documentation>indicator: under customs bond (default value is "No")</xsd:documentation>
					<xsd:documentation xml:lang="DE">Kennzeichen für Zollgut (Default ist "N")</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Number" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>e.g. ATA / ATD - number </xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="35"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="GeneralCustomsDataDef">
		<xsd:sequence>
			<xsd:element name="AtlasATBNr" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>ATLAS registration number for short-term custody</xsd:documentation>
						<xsd:documentation xml:lang="DE">ATLAS-Nummer bei Anmeldung einer SumA</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:length value="21"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="AtlasRegistrationViaHabisClassicData" type="AtlasRegistrationViaHabisClassicDef" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="AtlasRegistrationViaHabisClassicDef">
		<xsd:sequence>
			<xsd:element name="RegistratedAtlasUserCode">
				<xsd:annotation>
					<xsd:documentation>User must be registrated in Zodiak</xsd:documentation>
					<xsd:documentation xml:lang="DE">Der angegebene UserCode muss in Zodiak registriert sein</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="10"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="RemarksForCustoms" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="25"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="EquipmentDetailsDef">
		<xsd:annotation>
			<xsd:documentation>either TypeCode or Name must be specified</xsd:documentation>
			<xsd:documentation xml:lang="DE">Lademittel, entweder TypeCode oder Name muss angegeben sein</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="TypeCode" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>according to HABIS code list A14</xsd:documentation>
						<xsd:documentation xml:lang="DE">lt. HABIS-Schlüsselverzeichnis A14</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="2"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Name" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1"/>
						<xsd:maxLength value="50"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Quantity" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:positiveInteger">
						<xsd:maxInclusive value="999"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Weight" type="WeightDef" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="LoadingDef">
		<xsd:annotation>
			<xsd:documentation>for outbound traffic only. code or name must be specified</xsd:documentation>
			<xsd:documentation xml:lang="DE">Verladewunsch, nur im Bahnversand, Code oder Name muss angegeben sein</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Code" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>according to HABIS code list "loading request" (BANLWPU1)</xsd:documentation>
						<xsd:documentation xml:lang="DE">lt. HABIS-Stammdatei "Verladewunsch" (BANLWPU1)</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="4"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Name" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="50"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SealDetailsDef">
		<xsd:sequence>
			<xsd:element name="SequenceNumber">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>used to unambigously identify the seal details for a unit in the communication</xsd:documentation>
						<xsd:documentation xml:lang="DE">zur eindeutigen Identifikation der Siegel-Angaben für eine Ladeeinheit</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:positiveInteger">
						<xsd:maxInclusive value="99"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Number">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>official seal number (e.g. customs seal)</xsd:documentation>
						<xsd:documentation>currently only 12 bytes used in HABIS</xsd:documentation>
						<xsd:documentation xml:lang="DE">amtliche Siegelnummer (z.B. Zollsiegel)</xsd:documentation>
						<xsd:documentation xml:lang="DE">z.Zt. nur 12 Stellen benutzt in HABIS</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="20"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="TypeCode" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>type of seal according to HABIS code list A62</xsd:documentation>
						<xsd:documentation xml:lang="DE">Siegel-Art lt. HABIS-Schlüsselverzeichnis A62</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:length value="1"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="PlaceCode" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>code for the placement of the seal, according to HABIS code list A63</xsd:documentation>
						<xsd:documentation xml:lang="DE">Anbringungs-Ort lt. HABIS-Schlüsselverzeichnis A63</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:length value="1"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TemperatureDef">
		<xsd:sequence>
			<xsd:element name="Refrigeration" type="ChoiceDef" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>indicator for refrigeration (default value is "No")</xsd:documentation>
					<xsd:documentation xml:lang="DE">Kennzeichen für Tiefkühlung (Default ist "N")</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MaxValue" type="TemperatureValue" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>upper limit of the temperature range for refrigerated goods / signed (+/-) temperature</xsd:documentation>
					<xsd:documentation xml:lang="DE">oberer Temperatur-Grenzwert für Kühlgut / mit Vorzeichen (+/-)</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MinValue" type="TemperatureValue" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>lower limit of the temperature range for refrigerated goods / signed (+/-) temperature</xsd:documentation>
					<xsd:documentation xml:lang="DE">unterer Temperatur-Grenzwert für Kühlgut / mit Vorzeichen (+/-)</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TransportContainerDef">
		<xsd:sequence>
			<xsd:element name="ContainerNumber" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>mandatory for inbound traffic, and for outbound traffic when the loading unit is full</xsd:documentation>
					<xsd:documentation xml:lang="DE">Pflicht im Bahnempfang, und im Bahnversand bei beladener LE</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>e.g.: byte 1 -  4 prefix, byte 5 - 12 number</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="1"/>
						<xsd:maxLength value="12"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="WagonNumber" type="WagonNumberDef" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>number of the rail road wagon carrying the container</xsd:documentation>
					<xsd:documentation xml:lang="DE">Nummer des transportierenden Wagens</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ContainerLoadData" type="FurtherTransportRelatedDataDef" minOccurs="0"/>
			<xsd:element name="OceanCarrierData" minOccurs="0">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Code" minOccurs="0">
							<xsd:simpleType>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="4"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="Name">
							<xsd:simpleType>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="20"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="BookingNumber" minOccurs="0">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation xml:lang="DE">Reederbuchungsnummer</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="20"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ContainerDetail" type="ContainerDef"/>
			<xsd:element name="OceanVoyage" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>one of the three elements must be specified</xsd:documentation>
					<xsd:documentation xml:lang="DE">mind. eine der drei Angaben muss vorhanden sein</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Code" minOccurs="0">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>code of the destination port</xsd:documentation>
									<xsd:documentation>UN/LOCODE - the port code above will take precedence over the port name listed below</xsd:documentation>
									<xsd:documentation xml:lang="DE">Code des Bestimmungshafens</xsd:documentation>
									<xsd:documentation xml:lang="DE">UN/LOCODE - der Code hat Vorrang über einen evtl. zusätzlich angegeben Namen</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:length value="5"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="Name" minOccurs="0">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>name of the destination port</xsd:documentation>
									<xsd:documentation xml:lang="DE">Name des Bestimmungshafens</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="20"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="ShipName" minOccurs="0">
							<xsd:simpleType>
								<xsd:annotation>
									<xsd:documentation>name of ship (ocean vessel)</xsd:documentation>
									<xsd:documentation xml:lang="DE">Schiffsname (Seeschiff)</xsd:documentation>
								</xsd:annotation>
								<xsd:restriction base="xsd:string">
									<xsd:maxLength value="25"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ReleaseNumber" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>code - defined by the owner of the container - used to verify the release of the container by the depot or quay operator</xsd:documentation>
						<xsd:documentation xml:lang="DE">Freistellungsnummer</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="15"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="TemperatureDetail" type="TemperatureDef" minOccurs="0"/>
			<xsd:element name="LoadingRequest" type="LoadingDef" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TransportWagonDef">
		<xsd:sequence>
			<xsd:element name="WagonNumber" type="WagonNumberDef" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="FurtherTransportRelatedDataDef">
		<xsd:sequence>
			<xsd:element name="Content" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>textual description of the content</xsd:documentation>
						<xsd:documentation xml:lang="DE">Warenbeschreibung</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="200"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Commodity" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>NHM-Code describing the shipped good.</xsd:documentation>
						<xsd:documentation xml:lang="DE">Warencode nach NHM</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:length value="6"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="EquipmentDetail" type="EquipmentDetailsDef" minOccurs="0"/>
			<xsd:element name="PoolPalletDetail" minOccurs="0">
				<xsd:complexType>
					<xsd:annotation>
						<xsd:documentation>one of the quanities must be specified</xsd:documentation>
						<xsd:documentation xml:lang="DE">Tauschpaletten, mind. eine Anzahl muss angegeben sein</xsd:documentation>
					</xsd:annotation>
					<xsd:sequence>
						<xsd:element name="QuantityEuroPallet" minOccurs="0">
							<xsd:simpleType>
								<xsd:restriction base="xsd:positiveInteger">
									<xsd:maxInclusive value="999"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="QuantityBox" minOccurs="0">
							<xsd:simpleType>
								<xsd:restriction base="xsd:positiveInteger">
									<xsd:maxInclusive value="999"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="CustomsTariff" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>only for customs declaration when not using HZO</xsd:documentation>
						<xsd:documentation xml:lang="DE">Zolltarif, nur wenn nicht HZO benutzt wird</xsd:documentation>
					</xsd:annotation>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="12"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
</xsd:schema>
